use std::cell::RefCell;
use std::collections::HashMap;
use std::iter::Map;
use std::rc::Rc;

use crate::class::vm_class::VMClass;
use crate::vm_val::VMValEnum;

pub struct VMObject {
    pub vm_class: Rc<VMClass>,
    pub jclass: Option<Rc<VMClass>>,
    pub slots: RefCell<Vec<VMValEnum>>,
    pub arr_len: i32,
    pub is_arr: bool,
}

unsafe impl Send for VMObject {}

unsafe impl Sync for VMObject {}
